function Get-ADRDomain
{
    <#
        .Synopsis
            Retrieves domain information based on certain parameters

        .Description
            Will follow....
        .Parameter <parameter name> 
            What the paramter is used for
        .Example
            Example of Use (try to add one for each parameter set)
        .OUTPUTS
            .NET Type of Object it outputs
        .INPUTS
            .NET type of Inputs
        .Link
            Any cmdlets/functions/scripts that are similar
         NAME:      Get-ADRDomain
         AUTHOR:    $Author$
         Website:   $HeadURL$
         LASTEDIT:  $LastChangedDate$
         Version:   $Rev$
         #Requires -Version 2.0
    #>
    [CmdletBinding(SupportShouldProcess=$true)]
    
    Param(
        [Parameter(ValueFromPipeline=$true,Mandatory=$True)]
        [string]$RequiredParameter,
        [Parameter()]
        [int]$OptionalParameter,
        [Parameter()]
        [Switch]$SwitchParameter
        )
    Begin
    {
        Write-Verbose ""
        Write-Verbose " [Begin] :: Start BeginBlock"
        function Foo
        {
            Write-Verbose " [FOO] :: Message"
            "Foo"
        }
        Write-Verbose " [Begin] :: End BeginBlock"
        Write-Verbose ""
    }
    
    Process
    {
        Write-Verbose ""
        Write-Verbose " [PROCESS] :: Start ProcessBlock"

        Write-Verbose " [PROCESS] :: End ProcessBlock"
        Write-Verbose ""
    }
    
    End
    {
        Write-Verbose ""
        Write-Verbose " [END] :: Start EndBlock"

        Write-Verbose " [END] :: End EndBlock"
        Write-Verbose "" 
    }
}
